#region Using References

using System;

#endregion

namespace Beaker.OpenCube.Game.Mobs
{
	/// <summary>
	/// Implemented by mobs that can breed.
	/// </summary>
	public interface ICanBreed
	{
		/// <summary>
		/// Gets or sets the time until the mob loses its breeding hearts and stops searching for a mate.
		/// </summary>
		/// <value>
		/// The time until the mob loses its breeding hearts and stops searching for a mate.
		/// </value>
		TimeSpan InLoveDuration { get; set; }

		/// <summary>
		/// Gets or sets the age of the mob.
		/// </summary>
		/// <remarks>
		/// When negative, the mob is a baby. 
		/// When 0 or above, the mob is an adult. 
		/// When above 0, represents the number of ticks before this mob can breed again.
		/// </remarks>
		TimeSpan Age { get; set; }
	}
}